package com.lucy.nepu.module.htopic.lib.params;

import com.lucy.nepu.module.htopic.rule.IsHorTopicType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotBlank;
@Data
@ApiModel(value = "横向课题词典更新参数")
public class HorTopicDictUpdateParams {
    @NotBlank(message = "横向课题词典ID不可为空")
    @ApiModelProperty(value = "横向课题词典ID",name = "id")
    String id;

    @NotBlank(message = "分类编码不可为空")
    @ApiModelProperty("分类编码")
    String code;

    /**
     * 横向课题类型
     */
    @IsHorTopicType
    @ApiModelProperty(value = "横向课题类型",notes = "自然科学，社会科学")
    String horTopicType;

    /**
     * 横向课题级别
     */
    @ApiModelProperty(value = "横向课题级别",notes = "A1,A2,B1等")
    String horTopicLevel;

    @DecimalMin(value = "0",message = "经费上限不小于0")
    @ApiModelProperty("经费上限")
    Double fundsCeiling;

    @DecimalMin(value = "0",message = "经费下限不小于0")
    @ApiModelProperty("经费下限")
    Double fundsFloor;

    /**
     * 横向课题年工作量
     */
    @DecimalMin(value = "0",message = "最小工作量大于0")
    @ApiModelProperty(value = "工作量Min",notes = "获奖对应的最小工作量")
    Double workloadMin;

    @DecimalMin(value = "0",message = "最大工作量大于0")
    @ApiModelProperty(value = "工作量Max",notes = "获奖对应的最大工作量")
    Double workloadMax;

    @ApiModelProperty(value = "横向课题词典备注")
    String remark;
}
